home *** CD-ROM | disk | FTP | other *** search
/ Programmer Plus 2007 / Programmer-Plus-2007.iso / Programming / Borland Plateform / Turbo Pascal V7.0 / DOCDEMO.ZIP / TUTRES.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1992-10-30  |  5.8 KB  |  168 lines

  1. {************************************************}
  2. {                                                }
  3. {   Turbo Vision 2.0 Demo                        }
  4. {   Copyright (c) 1992 by Borland International  }
  5. {                                                }
  6. {************************************************}
  7.  
  8. program TutRes;
  9.  
  10. uses TutConst, Drivers, Objects, Views, Menus, Dialogs, Validate, Editors,
  11.   App;
  12.  
  13. var
  14.   R: TRect;
  15.   ResFile: TResourceFile;
  16.   MainMenu: PMenuBar;
  17.   StatLine: PStatusLine;
  18.   OrderWindow, AboutBox: PDialog;
  19.   Field: PInputLine;
  20.   Cluster: PCluster;
  21.   Memo: PMemo;
  22.  
  23. begin
  24.   RegisterViews;
  25.   RegisterDialogs;
  26.   RegisterMenus;
  27.   RegisterValidate;
  28.   RegisterEditors;
  29.   ResFile.Init(New(PBufStream, Init('TUTORIAL.TVR', stCreate, 2048)));
  30.   R.Assign(0, 0, 80, 1);
  31.   New(MainMenu, Init(R, NewMenu(
  32.     NewSubMenu('~F~ile', hcNoContext, NewMenu(
  33.       StdFileMenuItems(nil)),
  34.     NewSubMenu('~E~dit', hcNoContext, NewMenu(
  35.       StdEditMenuItems(
  36.       NewLine(
  37.       NewItem('~S~how clipboard', '', kbNoKey, cmClipShow, hcNoContext,
  38.       nil)))),
  39.     NewSubMenu('~O~rders', hcNoContext, NewMenu(
  40.       NewItem('~N~ew', 'F9', kbF9, cmOrderNew, hcNoContext,
  41.       NewItem('~S~ave', '', kbNoKey, cmOrderSave, hcNoContext,
  42.       NewLine(
  43.       NewItem('Next', 'PgDn', kbPgDn, cmOrderNext, hcNoContext,
  44.       NewItem('Prev', 'PgUp', kbPgUp, cmOrderPrev, hcNoContext,
  45.       nil)))))),
  46.     NewSubMenu('Op~t~ions', hcNoContext, NewMenu(
  47.       NewItem('~T~oggle video mode', '', kbNoKey, cmOptionsVideo, hcNoContext,
  48.       NewItem('~S~ave desktop...', '', kbNoKey, cmOptionsSave, hcNoContext,
  49.       NewItem('~L~oad desktop...', '', kbNoKey, cmOptionsLoad, hcNoContext,
  50.       nil)))),
  51.     NewSubMenu('~W~indow', hcNoContext, NewMenu(
  52.       NewItem('~O~rders', '', kbNoKey, cmOrderWin, hcNoContext,
  53.       NewItem('S~u~ppliers', '', kbNoKey, cmSupplierWin, hcNoContext,
  54.       NewItem('Stoc~k~ items', '', kbNoKey, cmStockWin, hcNoContext,
  55.       NewLine(
  56.       StdWindowMenuItems(nil)))))),
  57.     NewSubMenu('~H~elp', hcNoContext, NewMenu(
  58.       NewItem('~A~bout', '', kbNoKey, cmAbout, hcNoContext,
  59.       nil)),
  60.     nil)))))))));
  61.   ResFile.Put(MainMenu, 'MAINMENU');
  62.  
  63.   R.Assign(0, 24, 80, 25);
  64.   New(StatLine, Init(R,
  65.     NewStatusDef(0, $CFFF,
  66.       NewStatusKey('~F3~ Open', kbF3, cmOpen,
  67.       NewStatusKey('~F4~ New', kbF4, cmNew,
  68.       NewStatusKey('~Alt+F3~ Close', kbAltF3, cmClose,
  69.       StdStatusKeys(nil)))),
  70.     NewStatusDef($D000, $DFFF,
  71.       NewStatusKey('~PgUp~ Prev', kbPgUp, cmSupplierPrev,
  72.       NewStatusKey('~PgDn~ Next', KbPgDn, cmSupplierNext,
  73.       nil)),
  74.     NewStatusDef($E000, $EFFF,
  75.       NewStatusKey('~PgUp~ Prev', kbPgUp, cmStockPrev,
  76.       NewStatusKey('~PgDn~ Next', KbPgDn, cmStockNext,
  77.       nil)),
  78.     NewStatusDef($F000, $FEFF,
  79.       NewStatusKey('~PgUp~ Prev', kbPgUp, cmOrderPrev,
  80.       NewStatusKey('~PgDn~ Next', kbPgDn, cmOrderNext,
  81.       StdStatusKeys(nil))),
  82.     NewStatusDef($FF00, $FFFF,
  83.       StdStatusKeys(nil), nil)))))));
  84.   ResFile.Put(StatLine, 'STATUS');
  85.  
  86.   R.Assign(0, 0, 40, 11);
  87.   AboutBox := New(PDialog, Init(R, 'About Tutorial'));
  88.   with AboutBox^ do
  89.   begin
  90.     Options := Options or ofCentered;
  91.     R.Assign(4, 2, 36, 4);
  92.     Insert(New(PStaticText, Init(R, #3'Turbo Vision 2.0'#13#3'Tutorial program')));
  93.     R.Assign(4, 5, 36, 7);
  94.     Insert(New(PStaticText, Init(R, #3'Copyright 1992'#13#3'Borland International')));
  95.     R.Assign(15, 8, 25, 10);
  96.     Insert(New(PButton, Init(R, 'O~k~', cmOk, bfDefault)));
  97.   end;
  98.   ResFile.Put(AboutBox, 'ABOUTBOX');
  99.  
  100.   R.Assign(0, 0, 60, 17);
  101.   OrderWindow := New(PDialog, Init(R, 'Orders'));
  102.   with OrderWindow^ do
  103.   begin
  104.     Options := Options or ofCentered;
  105.     HelpCtx := $F000;
  106.  
  107.     R.Assign(13, 2, 23, 3);
  108.     Field := New(PInputLine, Init(R, 8));
  109.     Field^.SetValidator(New(PRangeValidator, Init(1, 32767)));
  110.     Insert(Field);
  111.     R.Assign(2, 2, 12, 3);
  112.     Insert(New(PLabel, Init(R, '~O~rder #:', Field)));
  113.  
  114.     R.Assign(13, 4, 23, 5);
  115.     Field := New(PInputLine, Init(R, 8));
  116.     Field^.SetValidator(New(PPXPictureValidator, Init('&&&-####', True)));
  117.     Insert(Field);
  118.     R.Assign(2, 4, 12, 5);
  119.     Insert(New(PLabel, Init(R, '~S~tock #:', Field)));
  120.  
  121.     R.Assign(43, 2, 53, 3);
  122.     Field := New(PInputLine, Init(R, 8));
  123.     Field^.SetValidator(New(PPXPictureValidator, Init('{#[#]}/{#[#]}/{##[##]}', True)));
  124.     Insert(Field);
  125.     R.Assign(26, 2, 41, 3);
  126.     Insert(New(PLabel, Init(R, '~D~ate of order:', Field)));
  127.  
  128.     R.Assign(46, 4, 53, 5);
  129.     Field := New(PInputLine, Init(R, 5));
  130.     Field^.SetValidator(New(PRangeValidator, Init(1, 32767)));
  131.     Insert(Field);
  132.     R.Assign(26, 4, 44, 5);
  133.     Insert(New(PLabel, Init(R, '~Q~uantity ordered:', Field)));
  134.  
  135.     R.Assign(3, 7, 57, 8);
  136.     Cluster := New(PRadioButtons, Init(R,
  137.       NewSItem('Cash   ',
  138.       NewSItem('Check  ',
  139.       NewSItem('P.O.   ',
  140.       NewSItem('Account', nil))))));
  141.     Insert(Cluster);
  142.     R.Assign(2, 6, 21, 7);
  143.     Insert(New(PLabel, Init(R, '~P~ayment method:', Cluster)));
  144.  
  145.     R.Assign(22, 8, 37, 9);
  146.     Cluster := New(PCheckBoxes, Init(R, NewSItem('~R~eceived', nil)));
  147.     Insert(Cluster);
  148.  
  149.     R.Assign(3, 10, 57, 13);
  150.     Memo := New(PMemo, Init(R, nil, nil, nil, 255));
  151.     Insert(Memo);
  152.     R.Assign(2, 9, 9, 10);
  153.     Insert(New(PLabel, Init(R, 'Notes:', Memo)));
  154.  
  155.     R.Assign(2, 14, 12, 16);
  156.     Insert(New(PButton, Init(R, '~N~ew', cmOrderNew, bfNormal)));
  157.     R.Assign(17, 14, 27, 16);
  158.     Insert(New(PButton, Init(R, '~S~ave', cmOrderSave, bfDefault)));
  159.     R.Assign(32, 14, 42, 16);
  160.     Insert(New(PButton, Init(R, '~C~ancel', cmOrderCancel, bfNormal)));
  161.     R.Assign(45, 14, 55, 16);
  162.     Insert(New(PButton, Init(R, 'Next', cmOrderNext, bfNormal)));
  163.     SelectNext(False);
  164.   end;
  165.   ResFile.Put(OrderWindow, 'ORDERS');
  166.   ResFile.Done;
  167. end.
  168.